package com.luoran.car.domain;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 优惠券表
 * @TableName COUPON
 */
@TableName(value ="\"CAR_MANAGER\".COUPON")
@Data
public class Coupon implements Serializable {
    /**
     * 优惠卷id
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 优惠卷名称
     */
    @ExcelProperty("优惠卷名称")
    private String name;

    /**
     * 折扣类型
     */
    private String nameType;

    /**
     * 折扣金额
     */
    private BigDecimal price;

    /**
     * 开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;

    /**
     * 结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    /**
     * 最低限制
     */
    private String minChase;

    /**
     * 最高限制
     */
    private String maxChase;

    /**
     * 发行数量
     */
    private Integer quantity;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 备注
     */
    private String notes;

    /**
     * 图片
     */
    private String image;




    /**
     * 发出时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    /**
     * 乐观锁
     */
    private Integer version;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
    @TableField(exist = false)
    private String[] createTimes;
    @TableField(exist = false)
    private String stTime;
    @TableField(exist = false)
    private String enTime;
    @TableField(exist = false)
    private String tname;
}
